var apexLayer = {
    /**
     * 警告提示
     * @param {Object} msg  提示内容
     */
    Warn: function (msg) {
        return layer.open({
            content: msg,
            style: 'background-color: rgba(0,0,0,.5); color:#fff; border:none;',
            time: 2,
            shadeClose: true
        });
    },
    /**
     * 成功提示
     * @param {Object} msg  提示内容
     * @param {Object} func  回调事件 自动关闭提示层
     */
    Success: function (msg, func) {
        if (msg == "" || typeof msg == "undefined" || msg == null) {
            msg = "业务请求受理成功！";
        }
        //信息框
        var index = layer.open({
            btn: ['确定'],
            shadeClose: true,
            content: msg,
            yes: function (index) {
                layer.close(index);
                if (typeof func == "function") {
                    func();
                }
            }
        });
        return index;
    },
    /**
     * 失败、错误提示
     * @param {Object} msg   提示内容
     * @param {Object} func  回调事件 自动关闭提示层
     */
    Error: function (msg, func) {
        if (msg == "" || typeof msg == "undefined" || msg == null) {
            msg = "业务请求受理失败！";
        }
        //信息框
        layer.open({
            btn: ['确定'],
//            title: '温馨提示',
            content: msg,
            yes: function (index) {
                layer.close(index);
                if (typeof func == "function") {
                    func();
                }
            }
        });
    },
    /**
     * 弹出消息提示框
     * @param {Object} msg   提示内容
     * @param {Object} type  图标类型，提供了0-16的选择，也许有你喜欢的。 设置-1不显示图标
     * @param {Object} title 提示标题
     * @param {Object} func  回调事件 自动关闭提示层
     */
    Msg: function (msg, type, title, func) {
        if (msg == "" || typeof msg == "undefined" || msg == null) {
            msg = "业务请求受理成功！";
        }
        //信息框
        layer.open({
            btn: ['确定'],
//            title:title,
            content: msg,
            yes: function (index) {
                layer.close(index);
                if (typeof func == "function") {
                    func();
                }
            }
        });
    },
    /**
     * 弹出确认提示框，拥有确定与取消2个按钮事件
     * @param {Object} confirm_text  提示内容
     * @param {Object} title         提示标题
     * @param {Object} btnYesName    确定按钮的名称          不传默认"确定"
     * @param {Object} btnNoName     取消按钮的名称          不传默认Ts.G_QX
     * @param {Object} func_yes      确定按钮的处理事件      不传默认不执行任何事件
     * @param {Object} func_no       取消按钮的处理事件      不传默认不执行任何事件
     */
    Confirm: function (confirm_text, btnYesName, btnNoName, func_yes, func_no) {
        if (btnYesName == null || btnYesName == "" || typeof btnYesName == "undefined") {
            btnYesName = "确定";
        }
        if (btnNoName == null || btnNoName == "" || typeof btnNoName == "undefined") {
            btnNoName = Ts.G_QX;
        }

        //信息框
        layer.open({
            btn: [btnYesName, btnNoName],
//            title:title,

            content: confirm_text,
            yes: function (index) {
                layer.close(index);

                if (typeof func_yes == "function") {
                    func_yes();
                }
            },
            no: function (index) {
                layer.close(index);
                if (typeof func_no == "function") {
                    func_no();
                }
            }
        });
        return;//类似原始的layer对象，返回对应的layer层对应的索引值，这样就可以在外面操作layer层
    },
    /**
     * 无标题的弹出层  noTitlePage
     * @param {Object} content           弹出层内容             默认"温馨提示"
     */
    NoTitlePage:function(content){
        if(content==null||content==""||typeof content == "undefined"){
            content = "温馨提示";
        }
        var index = layer.open({
            type: 1,
            btn: ['确定'],
            style:"position:fixed; left:0; top:0; width:100%; height:100%; border:none;",
            content:'<div style="max-height:100%;overflow-y:scroll"><div class="pd1em">'+content+'</div></div>',
            anim:false
        });
        return index;//类似原始的layer对象，返回对应的layer层对应的索引值，这样就可以在外面操作layer层
    },
    /**
     * 带标题的弹出层  withTitlePage
     * @param {Object} title             弹出层标题             默认"温馨提示"
     * @param {Object} content           弹出层内容             默认"温馨提示"
     */
    WithTitlePage:function(title,content,btn){
        if(title==null||title==""||typeof title == "undefined"){
            title = "温馨提示";
        }
        if(content==null||content==""||typeof content == "undefined"){
            content = "温馨提示";
        }
        var height = $(window).height()-95;
        var html = [];
        html.push('<header class="header"><div class="header-left"><i class="icon ico-arrowleft" id="header_back"></i></div>');
        html.push('<div class="page-title">');
        html.push(title);
        html.push('</div><div class="header-right"></div></header>');
        html.push('<div class="main" id="scrollBody"><div class="pd1em">');
        html.push(content);
        html.push('</div></div>');
        var index = layer.open({
            type: 1,
            btn: btn ? btn : null,
            layermend: true,
            anim:false,
            style:"position:fixed; left:0; top:0; width:100%; height:100%; border:none;",
            content:html.join(""),
            success: function () {
                //主体滚动，头部不滚动
                var wHeight = $(window).height();
                var hHeight = $(".header").height();
                $("#scrollBody").css({
                    'max-height': (wHeight - hHeight) + 'px',
                }).find("div:first").children().css({'margin':'','padding':''});
                $("#header_back").bind("click", function () {
                    //即关闭当前弹出层
                    apexLayer.CloseAll();
                });
            },
        });
        return index;//类似原始的layer对象，返回对应的layer层对应的索引值，这样就可以在外面操作layer层
    },
    /**
     * 弹出页面层 内容为已有页面上隐藏的一段html或者脚本动态拼接的html
     */
    PopUpPage: function(params) {
    	var style = "width:" + (params.width || "auto") +
    				";height:" + (params.height || "auto") +
    				";border:none;";
    	var options = {
    			type: 1,
    			layermend: true,
//    			style: "position:fixed; left:0; top:0; width:100%; height:100%; border:none;",
    			style: style,
    			content: params.content,
    			anim: false,
    			shadeClose: params.shadeClose || false,
    			success: function() {
    				if (params.callback && typeof params.callback['success'] === "function") {
                		params.callback['success']();
                	}
    			},
    			end: function() {
    				if (params.callback && typeof params.callback['end'] === "function") {
                		params.callback['end']();
                	}
    			}	
    	};
    	if (params.title) {
    		options.title = params.title;
    	}
    	if (params.btn) {
    		options.btn = params.btn;
    	}
    	var index = layer.open(options);
    	return index;
    },
    /**
     * 关闭当前的层
     * @param {Object} index
     */
    CloseIndex: function (index) {
        if (index != null && index != "" && typeof index != "undefined") {
            layer.close(index);
        }
    },
    /**
     * 关闭所有的layer层
     */
    CloseAll: function () {
        if (typeof layer.closeAll == "function")
            layer.closeAll();
    },
    /**
     * layer遮罩层方法
     * @param {Object} loadingMsg      遮罩层提示文本信息     默认"正在加载中..."
     * @param {Object} timeout         自动隐藏时间（单位秒） 默认不自动关闭
     */
    Loading: function (loadingMsg, timeout) {
        if (loadingMsg == null || loadingMsg == "" || typeof loadingMsg == "undefined") {
            loadingMsg = "正在加载中...";
        }
        if (timeout == null || timeout == "" || typeof timeout == "undefined") {
            timeout = 0;
        }
        var index;
        if (timeout <= 0) {
            index = layer.open({type: 2});
            ;
        } else {
            index = layer.open({type: 2, time: timeout});
        }
        return index;//类似原始的layer对象，返回对应的layer层对应的索引值，这样就可以在外面操作layer层
    },

    Tips: function (params) {
        if(!params.message){
            return;
        }
        var height = $(".header").height();
        layer.open({
            type:0,
            content: params.message,
            style: 'position:fixed;top:'+height+'px;left:10%;width:80%;background-color:rgba(0,0,0,0.8);color:#FFF;border-radius:0.5rem;',
            anim: false,
            shade: false,
            shadeClose: false
        });
    },

    /**
     * layer弹出Iframe层方法（手机版本，改为全屏信息)
     * @param  params
     * params参数格式：{ title:'标题',width:'宽度',
	 * 					height:'高度',src:'url地址',
	 * 					scrolling:'滚动条',closeBtn:'关闭按钮'
	 * 					offsetTop:'层距离浏览器可视区域顶部距离',offsetLeft:'层距离浏览器可视区域左边距离'
	 * 					callback:function(){关闭时候的回调函数}}
     */
    OpenFrame: function (params) {
        var openLayer = function(html) {
        	var height = params.height || $(window).height();
        	var options = {
        			title: params.title || false,
        			type: 1,
        			layermend: true,
        			style: "position:fixed; left:0; top:0; width:100%; height:100%; border:none;",
        			content: html,
        			anim: false,
        			success: function() {
        				if (params.callback && typeof params.callback['success'] === "function") {
                    		params.callback['success']();
                    	}
        			},
        			end: function() {
        				if (params.callback && typeof params.callback['end'] === "function") {
                    		params.callback['end']();
                    	}
        			}
        	};
        	if (params.btn) {
        		options.btn = params.btn;
        	}
            var index = layer.open(options);
            return index;//类似原始的layer对象，返回对应的layer层对应的索引值，这样就可以在外面操作layer层
        }
        Ajax({
            url: params.src,
            isMask: true,
            autoUnmask: true,
            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
            dataType: "html",
            type: "GET",
            success: function (data) {
                return openLayer(data);
            }
        });
    },

    /**
     * 底部弹出层
     * @param  params
     * params参数格式：{ title:'标题',width:'宽度',
	 * 					height:'高度',src:'url地址',
	 * 					scrolling:'滚动条',closeBtn:'关闭按钮'
	 * 					offsetTop:'层距离浏览器可视区域顶部距离',offsetLeft:'层距离浏览器可视区域左边距离'
	 * 					callback:function(){关闭时候的回调函数}}
     */
    BottomTips: function (params) {
        var openLayer = function(html) {
            var height = params.height || $(window).height()/2;
            var options = {
                title: params.title || false,
                type: 1,
                layermend: true,
                style: "position:fixed; bottom:0; left:0; width:100%; height:"+height+"px; padding:10px 0; border:none;",
                content: '<div style="max-height:'+height+'px;overflow-y:auto">'+html+'</div>',
                anim: false
            };
            var index = layer.open(options);
            return index;
        }
        Ajax({
            url: params.src,
            isMask: true,
            autoUnmask: true,
            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
            dataType: "html",
            type: "GET",
            success: function (data) {
                return openLayer(data);
            }
        });
    },
    /**
     * 关闭Tips提示层
     */
    CloseTips: function () {
        if (typeof layer.closeAll == "function")
            layer.closeAll();
    },
    Alert_loading: function () {

        layer.open({
            type: 2,
            shadeClose:false
        });
    }

};